feat: Digest mail notifications - eXIP7.3.0.22 - integration into feature/mips - #1117
Conversation
AI review — Round #1 — eXIP 7.3.0.22 Digest mail notifications (agenda category + timezone sync removal)Reviewed as one delivery with the 18 sibling PRs, against Tech Spec note 50469 and board 8372, at head 🟢 Nit — Verified conform: category Classification: N1 by aggregation with the eXIP (an endpoint is removed, none added). Compiles only once commons#786 is on Nexus; needs social#6093 at runtime for the timezone sync. 🤖 Generated with Claude Code |
40ceee9 to
232a431
Compare
26da3b5 to
5d082ef
Compare
5d082ef to
8acdb93
Compare
AI review — Round #2 (independent review, Architects Lead's reviewer)Independent pass at 🟡 Medium —
notification.key(getId());
if (event.getId() > 0) {
setNotificationRecipients(identityManager, notification, spaceService, eventAttendees, event, typeModification, modifierId);
} // no setFrom(...) — unlike AgendaNotificationPlugin.java:89-94 in this same PR
Fix: the same block as 🟢 Nit — unused imports in Verified conform: category Classification: N1 by aggregation with the eXIP (an endpoint is removed, none added). Compiles once commons#786 is on Nexus; needs social#6093 at runtime for the timezone sync. Approver ≠ author, never on the AI review alone; 🤖 Generated with Claude Code |
…XO-89484 - eXIP7.3.0.22 Prior this change, AgendaUserSettingsServiceTest still imported CommonsUtils, OrganizationService and UserProfile, which only the removed testupdateUserTimeZone case used: the timezone synchronization moved to social in this eXIP. After this commit, the three imports are gone and the class imports only what its remaining cases use. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Thanks for the pass. Answers to both points, at head 🟡
|
AI review — Round #3 (follow-up, final for the code)Independent review, Architects Lead's reviewer, at head Status of the previous rounds
New findingsNone. The only hunk since the last round is the import removal. Verified conform (unchanged from Round #2, re-checked at head): category All findings from the previous rounds are resolved or withdrawn on this PR; nothing outstanding from the AI review side on the code. The Classification: N1 by aggregation with the eXIP (an endpoint is removed, none added). Compiles once commons#786 is on Nexus; needs social#6093 at runtime for the timezone sync. Approver ≠ author, never on the AI review alone. 🤖 Generated with Claude Code |
eXIP 7.3.0.22 — Digest mail notifications · integration into
feature/mipsThe
agendacategory (invitation, date poll) and its line plugin, the actor declared on event notifications (so the event creator is left out of his own digest), the removal of the timezone synchronization now owned by social, and the cleanup of the legacymakeDigestoverrides.The 4 commit(s) replayed from
feature/experience24854c65feat: Declare the Agenda digest mail notifications category - EXO-89484 (feat: Declare the Agenda digest mail notifications category - EXO-89484 - eXIP7.3.0.22 #1070)0ca4b707feat: Declare the actor of the agenda event notifications - EXO-89485 (feat: Declare the actor of the agenda event notifications - EXO-89485 - eXIP7.3.0.22 #1099)e458bf0efeat: Digest email lines for event invitations and date polls - EXO-89486_EXO-89487 (feat: Digest email lines for event invitations and date polls - EXO-89486_EXO-89487 - eXIP7.3.0.22 #1107)ec456b2bfix: Remove the legacy digest stubs of the agenda notification builders - EXO-90072 (fix: Remove the legacy digest stubs of the agenda notification builders - EXO-90072 - eXIP7.3.0.22 #1112)21 files changed, 386 insertions(+), 210 deletions(-)
How this branch was built
exip-7.3.0.22-mipsstarts fromorigin/feature/mipsand replays only the commits taggedeXIP7.3.0.22(git cherry-pick -x, the original reference is in every message). The FB version-bump commit (Task-87990) and the commits of the other eXIPs present onfeature/experienceare deliberately left out — nopom.xmlis touched.Merge order
makeDigestis still an abstract method ofcommons-apionfeature/mips; the other 18 PRs remove their overrides, so they only compile once commons is merged: commons#786 first (wait for the Nexus snapshot), then social#6093, then the 17 addons in any order.Classification
N1 for the whole eXIP (Liquibase schema and JPA entities, the commons notification dispatcher, new REST endpoints, mass email sending). Approver ≠ author: this PR must be approved by an Architect / Senior Developer who knows it is N1, not on the AI review alone.
Already validated on
feature/experienceEvery US of the board (project 8372) is "Tested & Validated" by the PO, the legacy engine cleanup (EXO-90072, 19 repositories) included. Full functional test plan: capture, daily and weekly contents, timezones, catch-up at startup, safety cleanup, and non-regression of the instant notifications.
Knowledge: TODO — eng-standards PR to open (
/domain-doccommons + social) before leaving draft🤖 Generated with Claude Code